Enviado por: phpmysql
Fecha: 1065221195
Actualizado: 1065221195
¿Usa base de datos?: 1
Visitas: 755
Votos: 0
Descargado: 17 veces
Valoración: 0.00
» Valora este script «
ZipDescargar

Como hacer un panel de administracion para editar una tabla en el mysql mediante una id principal .
este es el codigo que utilizo yo para que podais editar vuestros scripts.

Funciona de la siguiente forma en este archivo [b]noticiaseditar.php[/b] y edita las noticias por la id ej) [b]noticiaseditar.php?id=28[/b]


<?
include("config.php") ;
if($HTTP_GET_VARS[administrador]) { echo "Acceso denegado. Intento de hackeo." ; exit ; }
// Administrador del foro (sólo el administrador del foro puede editar mensajes)
$administrador = "phpmysql" ;
// Se comprueba que el mensaje pertenezca al usuario que desea editar el mensaje
// Si el que desea editarlo es el administrador ya no se hace la comprobación
if($HTTP_COOKIE_VARS[unick] != $administrador) {
$resp = mysql_query("select id from noticias where id='$id' and usuario='$HTTP_COOKIE_VARS[unick]'") ;
if(mysql_num_rows($resp) == 0) {
echo "No puedes editar este mensaje. Haz click <a href=javascript:history.back()>aquí</a> para regresar." ;
exit ;
}
mysql_free_result($resp) ;
}
if($enviar) {
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
return $texto ;
}
$titulo = quitar($titulo) ;
$noticia = quitar($noticia) ;
$noticiaext = quitar($noticiaext) ;
mysql_query("update noticias set titulo='$titulo',noticia='$noticia',noticiaext='$noticiaext' where id='$id'") ;
echo "Tu noticia ha sido editado con éxito. Haz click <a href='noticias.php?n=$id' >aquí</a> para regresar al noticia." ;
}
$resp = mysql_query("select titulo,noticia,noticiaext from noticias where id=$id") ;
while($datos = mysql_fetch_array($resp)) {
echo "
<form name='formulario' method='post' action='noticiaseditar.php?id=$id '>
<b>Titulo:</b><br>
<input type='text' name='titulo' size='40' maxlength='100' value='$datos[titulo]'class='form'><br>
<b>Noticia :</b><br>
<textarea name='noticia' cols='50' rows='10' class='form'>$datos[noticia]</textarea>
<br>
<b>Noticia extendida :</b><br>
<textarea name='noticiaext' cols='50' rows='10' class='form'>$datos[noticiaext]</textarea>
<br>
<br>
<input type='submit' name='enviar' value='Editar noticia' class='form'>
</form>
" ;
}
echo "</table>";
mysql_free_result($resp) ;
@mysql_close($conectar) ;
?>


Podriamos editar la noticia entrando si somos el usuario que ha enviado la noticia, entrando de otra forma nos daria acceso denegado.

a) El codigo que deberiamos poner en en [b]noticias.php[/b] para que al entrar nos mostrara la opcion editar si somos el usuario que lo ha enviado, es el siguiente
se pone antes del [b]echo = "" ;[/b] o despues de la ejecucion de el comando [b]while[/b] :



if($datos[usuario] == "$usuario" ) { $editar = "<a href='noticiaseditar?id=$datos[id]'>Editar</a>" ; }
else { $editar = "" ; }


con lo que podremos poner la opcion editar en donde pongamos lo de [b]$editar[/b]
de esta forma :


echo" $datos[titulo] - $editar"


b) Dependiendo del sistema que utilizemos tambien podemos poner un codigo si hemos decidido
mostrar la informacion sustituyendo la sentencia [b]echo = "";[/b] por [b]?>codigo<?[/b]
a la hora de hacerlo :


<? if ($datos[usuario] == "$usuario" ) {echo "<a href='noticiaseditas?id=$datos[id]'>Editar</a>";} else {echo "";} ?>


URL - [url=http://recursosphp.iefactory.com]mi web[/url]